<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Hardware Abstraction Layer (HAL)</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen_style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.cypress.com/"><img alt="Logo" src="logo.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Hardware Abstraction Layer (HAL)</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('group__group__hal__lptimer.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#groups">API Reference</a> &#124;
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">LPTimer (Low-Power Timer)<div class="ingroups"><a class="el" href="group__group__hal.html">HAL Drivers</a></div></div></div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">General Description</h2>
<p >High level interface for interacting with the low-power timer (LPTimer). </p>
<p >LPTimer can operate in all possible low power modes. It can be used either to measure timing between events, or to perform some action after a specified interval of time. </p>
<h1><a class="anchor" id="subsection_lptimer_features"></a>
Features</h1>
<ul>
<li>Wake the device up from deepsleep</li>
<li>Configurable to create a free-running timer or generate periodic interrupts.</li>
<li>Configurable to update the match value of an already configured LPTimer set up to generate an interrupt on match.</li>
<li>Used for measuring time between events in free-running mode.</li>
</ul>
<h1><a class="anchor" id="subsection_lptimer_quickstart"></a>
Quick Start</h1>
<p ><a class="el" href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5">cyhal_lptimer_init</a> can be used for a LPTimer initialization which resets all the clocking and prescaler registers, along with disabling the compare interrupt.</p>
<p >See <a class="el" href="group__group__hal__lptimer.html#subsection_lptimer_snippet_2">Snippet 2: LPTimer interrupts</a>.</p>
<h1><a class="anchor" id="subsection_lptimer_snippets"></a>
Code snippets</h1>
<h2><a class="anchor" id="subsection_lptimer_snippet_1"></a>
Snippet 1: LPTimer initialization with Default configuration</h2>
<p >The following snippet initializes a LPTimer in free running mode. </p><div class="fragment"><div class="line">    <a class="code hl_typedef" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a>       rslt;</div>
<div class="line">    <a class="code hl_struct" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> lptimer;</div>
<div class="line">    uint32_t        lptimer_value;</div>
<div class="line"> </div>
<div class="line">    <span class="comment">// Initialize the LPTIMER with default configuration</span></div>
<div class="line">    rslt = <a class="code hl_function" href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5">cyhal_lptimer_init</a>(&amp;lptimer);</div>
<div class="line"> </div>
<div class="line">    <span class="comment">// Read the LPTIMER count value</span></div>
<div class="line">    lptimer_value = <a class="code hl_function" href="group__group__hal__lptimer.html#gae759c60b5865a26599353e436518b1d3">cyhal_lptimer_read</a>(&amp;lptimer);</div>
<div class="ttc" id="agroup__group__hal__impl__hw__types_html_structcyhal__lptimer__t"><div class="ttname"><a href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a></div><div class="ttdoc">LPTIMER object.</div><div class="ttdef"><b>Definition:</b> cyhal_hw_types.h:906</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_gad5438541af765572369ee96588bd4ee5"><div class="ttname"><a href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5">cyhal_lptimer_init</a></div><div class="ttdeci">cy_rslt_t cyhal_lptimer_init(cyhal_lptimer_t *obj)</div><div class="ttdoc">Initialize the LPTimer.</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_gae759c60b5865a26599353e436518b1d3"><div class="ttname"><a href="group__group__hal__lptimer.html#gae759c60b5865a26599353e436518b1d3">cyhal_lptimer_read</a></div><div class="ttdeci">uint32_t cyhal_lptimer_read(const cyhal_lptimer_t *obj)</div><div class="ttdoc">Read the current tick.</div></div>
<div class="ttc" id="agroup__group__result_html_gaca79700fcc701534ce61778a9bcf57d1"><div class="ttname"><a href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a></div><div class="ttdeci">uint32_t cy_rslt_t</div><div class="ttdoc">Provides the result of an operation as a structured bitfield.</div><div class="ttdef"><b>Definition:</b> cy_result.h:438</div></div>
</div><!-- fragment --><h2><a class="anchor" id="subsection_lptimer_snippet_2"></a>
Snippet 2: LPTimer interrupts</h2>
<p >The following snippet initializes a LPTimer and uses <a class="el" href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">cyhal_lptimer_set_match()</a> to trigger an interrupt on match. Subsequent interrupts can be triggered at required times using <a class="el" href="group__group__hal__lptimer.html#gae91cdc8b63ef191f5a2013df3aaa5d78">cyhal_lptimer_set_delay()</a> called from the ISR. </p><div class="fragment"><div class="line"><span class="preprocessor">#define LPTIMER_MATCH_VALUE    (8192u)</span></div>
<div class="line"><span class="preprocessor">#define LPTIMER_INTR_PRIORITY     (3u)</span></div>
<div class="line"> </div>
<div class="line"><a class="code hl_struct" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> lptimer_obj;</div>
<div class="line"> </div>
<div class="line"><a class="code hl_typedef" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a> snippet_lptimer_init()</div>
<div class="line">{</div>
<div class="line">    <a class="code hl_typedef" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a> rslt;</div>
<div class="line"> </div>
<div class="line">    <span class="comment">// Initialize the LPTIMER</span></div>
<div class="line">    rslt = <a class="code hl_function" href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5">cyhal_lptimer_init</a>(&amp;lptimer_obj);</div>
<div class="line"> </div>
<div class="line">    <span class="comment">// Set a match value of 8192 counts (~0.25 seconds for a clock source of 32768 Hz)</span></div>
<div class="line">    <span class="keywordflow">if</span> (<a class="code hl_define" href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a> == rslt)</div>
<div class="line">    {</div>
<div class="line">        rslt = <a class="code hl_function" href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">cyhal_lptimer_set_match</a>(&amp;lptimer_obj, LPTIMER_MATCH_VALUE);</div>
<div class="line">    }</div>
<div class="line"> </div>
<div class="line">    <span class="keywordflow">if</span> (<a class="code hl_define" href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a> == rslt)</div>
<div class="line">    {</div>
<div class="line">        <span class="comment">// Register the callback handler which will be invoked when the interrupt triggers</span></div>
<div class="line">        <a class="code hl_function" href="group__group__hal__lptimer.html#gac670fa5380ffd41e548dac6975500b3d">cyhal_lptimer_register_callback</a>(&amp;lptimer_obj, lptimer_interrupt_handler, NULL);</div>
<div class="line"> </div>
<div class="line">        <span class="comment">// Configure and Enable the LPTIMER events</span></div>
<div class="line">        <a class="code hl_function" href="group__group__hal__lptimer.html#gaa07d09cfeb275d1343a335f6b4caec9c">cyhal_lptimer_enable_event</a>(&amp;lptimer_obj, CYHAL_LPTIMER_COMPARE_MATCH, LPTIMER_INTR_PRIORITY,</div>
<div class="line">                                   <span class="keyword">true</span>);</div>
<div class="line"> </div>
<div class="line">        <span class="comment">// Reload/Reset the Low-Power timer to start counting from this instant</span></div>
<div class="line">        rslt = <a class="code hl_function" href="group__group__hal__lptimer.html#ga5ed361c85190707574565009eb325473">cyhal_lptimer_reload</a>(&amp;lptimer_obj);</div>
<div class="line">    }</div>
<div class="line"> </div>
<div class="line">    <span class="keywordflow">return</span> rslt;</div>
<div class="line">}</div>
<div class="line"> </div>
<div class="line"> </div>
<div class="line"><span class="keywordtype">void</span> lptimer_interrupt_handler(<span class="keywordtype">void</span>* handler_arg, <a class="code hl_enumeration" href="group__group__hal__lptimer.html#ga8a2db5e37e9e36afd382844cf909278f">cyhal_lptimer_event_t</a> event)</div>
<div class="line">{</div>
<div class="line">    CY_UNUSED_PARAMETER(handler_arg);</div>
<div class="line">    CY_UNUSED_PARAMETER(event);</div>
<div class="line">    <span class="comment">// Reload/Reset the Low-Power timer to start counting from this instant</span></div>
<div class="line">    <a class="code hl_function" href="group__group__hal__lptimer.html#gae91cdc8b63ef191f5a2013df3aaa5d78">cyhal_lptimer_set_delay</a>(&amp;lptimer_obj, LPTIMER_MATCH_VALUE);</div>
<div class="line">}</div>
<div class="line"> </div>
<div class="line"> </div>
<div class="ttc" id="agroup__group__hal__lptimer_html_ga5ed361c85190707574565009eb325473"><div class="ttname"><a href="group__group__hal__lptimer.html#ga5ed361c85190707574565009eb325473">cyhal_lptimer_reload</a></div><div class="ttdeci">cy_rslt_t cyhal_lptimer_reload(cyhal_lptimer_t *obj)</div><div class="ttdoc">Reload/Reset the Low-Power timer.</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_ga8a2db5e37e9e36afd382844cf909278f"><div class="ttname"><a href="group__group__hal__lptimer.html#ga8a2db5e37e9e36afd382844cf909278f">cyhal_lptimer_event_t</a></div><div class="ttdeci">cyhal_lptimer_event_t</div><div class="ttdoc">LPTimer interrupt triggers.</div><div class="ttdef"><b>Definition:</b> cyhal_lptimer.h:107</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_ga8be81430cef74735168e703f204fe1a5"><div class="ttname"><a href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">cyhal_lptimer_set_match</a></div><div class="ttdeci">cy_rslt_t cyhal_lptimer_set_match(cyhal_lptimer_t *obj, uint32_t ticks)</div><div class="ttdoc">Update the match/compare value.</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_gaa07d09cfeb275d1343a335f6b4caec9c"><div class="ttname"><a href="group__group__hal__lptimer.html#gaa07d09cfeb275d1343a335f6b4caec9c">cyhal_lptimer_enable_event</a></div><div class="ttdeci">void cyhal_lptimer_enable_event(cyhal_lptimer_t *obj, cyhal_lptimer_event_t event, uint8_t intr_priority, bool enable)</div><div class="ttdoc">Configure and Enable/Disable the LPTimer events.</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_gac670fa5380ffd41e548dac6975500b3d"><div class="ttname"><a href="group__group__hal__lptimer.html#gac670fa5380ffd41e548dac6975500b3d">cyhal_lptimer_register_callback</a></div><div class="ttdeci">void cyhal_lptimer_register_callback(cyhal_lptimer_t *obj, cyhal_lptimer_event_callback_t callback, void *callback_arg)</div><div class="ttdoc">Register a LPTimer match event handler.</div></div>
<div class="ttc" id="agroup__group__hal__lptimer_html_gae91cdc8b63ef191f5a2013df3aaa5d78"><div class="ttname"><a href="group__group__hal__lptimer.html#gae91cdc8b63ef191f5a2013df3aaa5d78">cyhal_lptimer_set_delay</a></div><div class="ttdeci">cy_rslt_t cyhal_lptimer_set_delay(cyhal_lptimer_t *obj, uint32_t delay)</div><div class="ttdoc">Update the match/compare value.</div></div>
<div class="ttc" id="agroup__group__result_html_gaf58fac450d9fff4472f03ad68f6e546e"><div class="ttname"><a href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a></div><div class="ttdeci">#define CY_RSLT_SUCCESS</div><div class="ttdoc">cy_rslt_t return value indicating success</div><div class="ttdef"><b>Definition:</b> cy_result.h:465</div></div>
</div><!-- fragment --> <table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="groups" name="groups"></a>
API Reference</h2></td></tr>
<tr class="memitem:group__group__hal__results__lptimer"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__results__lptimer.html">LPTimer HAL Results</a></td></tr>
<tr class="memdesc:group__group__hal__results__lptimer"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPTimer specific return codes. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:structcyhal__lptimer__info__t"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#structcyhal__lptimer__info__t">cyhal_lptimer_info_t</a></td></tr>
<tr class="memdesc:structcyhal__lptimer__info__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPTimer Information.  <a href="group__group__hal__lptimer.html#structcyhal__lptimer__info__t">More...</a><br /></td></tr>
<tr class="separator:structcyhal__lptimer__info__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gae51c0464d3c9ca35707e15afe31ccb54"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#gae51c0464d3c9ca35707e15afe31ccb54">cyhal_lptimer_set_time</a>&#160;&#160;&#160;<a class="el" href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">cyhal_lptimer_set_match</a></td></tr>
<tr class="memdesc:gae51c0464d3c9ca35707e15afe31ccb54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deprecated.  <a href="group__group__hal__lptimer.html#gae51c0464d3c9ca35707e15afe31ccb54">More...</a><br /></td></tr>
<tr class="separator:gae51c0464d3c9ca35707e15afe31ccb54"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga09c30c6a9abcbd1a738529102aa9c9b5"><td class="memItemLeft" align="right" valign="top"><a id="ga09c30c6a9abcbd1a738529102aa9c9b5" name="ga09c30c6a9abcbd1a738529102aa9c9b5"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><b>cyhal_lptimer_event_callback_t</b>) (void *callback_arg, <a class="el" href="group__group__hal__lptimer.html#ga8a2db5e37e9e36afd382844cf909278f">cyhal_lptimer_event_t</a> event)</td></tr>
<tr class="memdesc:ga09c30c6a9abcbd1a738529102aa9c9b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handler for LPTimer interrupts. <br /></td></tr>
<tr class="separator:ga09c30c6a9abcbd1a738529102aa9c9b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga8a2db5e37e9e36afd382844cf909278f"><td class="memItemLeft" align="right" valign="top"><a id="ga8a2db5e37e9e36afd382844cf909278f" name="ga8a2db5e37e9e36afd382844cf909278f"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#ga8a2db5e37e9e36afd382844cf909278f">cyhal_lptimer_event_t</a> { <b>CYHAL_LPTIMER_COMPARE_MATCH</b>
 }</td></tr>
<tr class="memdesc:ga8a2db5e37e9e36afd382844cf909278f"><td class="mdescLeft">&#160;</td><td class="mdescRight">LPTimer interrupt triggers. <br /></td></tr>
<tr class="separator:ga8a2db5e37e9e36afd382844cf909278f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gad5438541af765572369ee96588bd4ee5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5">cyhal_lptimer_init</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj)</td></tr>
<tr class="memdesc:gad5438541af765572369ee96588bd4ee5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the LPTimer.  <a href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5">More...</a><br /></td></tr>
<tr class="separator:gad5438541af765572369ee96588bd4ee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0cbaebaddaa47faf71a69d46c65f7917"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#ga0cbaebaddaa47faf71a69d46c65f7917">cyhal_lptimer_free</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj)</td></tr>
<tr class="memdesc:ga0cbaebaddaa47faf71a69d46c65f7917"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deinitialize the LPTimer.  <a href="group__group__hal__lptimer.html#ga0cbaebaddaa47faf71a69d46c65f7917">More...</a><br /></td></tr>
<tr class="separator:ga0cbaebaddaa47faf71a69d46c65f7917"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ed361c85190707574565009eb325473"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#ga5ed361c85190707574565009eb325473">cyhal_lptimer_reload</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj)</td></tr>
<tr class="memdesc:ga5ed361c85190707574565009eb325473"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reload/Reset the Low-Power timer.  <a href="group__group__hal__lptimer.html#ga5ed361c85190707574565009eb325473">More...</a><br /></td></tr>
<tr class="separator:ga5ed361c85190707574565009eb325473"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8be81430cef74735168e703f204fe1a5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">cyhal_lptimer_set_match</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj, uint32_t ticks)</td></tr>
<tr class="memdesc:ga8be81430cef74735168e703f204fe1a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the match/compare value.  <a href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">More...</a><br /></td></tr>
<tr class="separator:ga8be81430cef74735168e703f204fe1a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae91cdc8b63ef191f5a2013df3aaa5d78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#gae91cdc8b63ef191f5a2013df3aaa5d78">cyhal_lptimer_set_delay</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj, uint32_t delay)</td></tr>
<tr class="memdesc:gae91cdc8b63ef191f5a2013df3aaa5d78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the match/compare value.  <a href="group__group__hal__lptimer.html#gae91cdc8b63ef191f5a2013df3aaa5d78">More...</a><br /></td></tr>
<tr class="separator:gae91cdc8b63ef191f5a2013df3aaa5d78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae759c60b5865a26599353e436518b1d3"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#gae759c60b5865a26599353e436518b1d3">cyhal_lptimer_read</a> (const <a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj)</td></tr>
<tr class="memdesc:gae759c60b5865a26599353e436518b1d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read the current tick.  <a href="group__group__hal__lptimer.html#gae759c60b5865a26599353e436518b1d3">More...</a><br /></td></tr>
<tr class="separator:gae759c60b5865a26599353e436518b1d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac670fa5380ffd41e548dac6975500b3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#gac670fa5380ffd41e548dac6975500b3d">cyhal_lptimer_register_callback</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj, <a class="el" href="group__group__hal__lptimer.html#ga09c30c6a9abcbd1a738529102aa9c9b5">cyhal_lptimer_event_callback_t</a> callback, void *callback_arg)</td></tr>
<tr class="memdesc:gac670fa5380ffd41e548dac6975500b3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a LPTimer match event handler.  <a href="group__group__hal__lptimer.html#gac670fa5380ffd41e548dac6975500b3d">More...</a><br /></td></tr>
<tr class="separator:gac670fa5380ffd41e548dac6975500b3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa07d09cfeb275d1343a335f6b4caec9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#gaa07d09cfeb275d1343a335f6b4caec9c">cyhal_lptimer_enable_event</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj, <a class="el" href="group__group__hal__lptimer.html#ga8a2db5e37e9e36afd382844cf909278f">cyhal_lptimer_event_t</a> event, uint8_t intr_priority, bool enable)</td></tr>
<tr class="memdesc:gaa07d09cfeb275d1343a335f6b4caec9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure and Enable/Disable the LPTimer events.  <a href="group__group__hal__lptimer.html#gaa07d09cfeb275d1343a335f6b4caec9c">More...</a><br /></td></tr>
<tr class="separator:gaa07d09cfeb275d1343a335f6b4caec9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6c86e106c2cc0e5ce0cc4168924a7d41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#ga6c86e106c2cc0e5ce0cc4168924a7d41">cyhal_lptimer_irq_trigger</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj)</td></tr>
<tr class="memdesc:ga6c86e106c2cc0e5ce0cc4168924a7d41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Manually trigger the LPTimer interrupt.  <a href="group__group__hal__lptimer.html#ga6c86e106c2cc0e5ce0cc4168924a7d41">More...</a><br /></td></tr>
<tr class="separator:ga6c86e106c2cc0e5ce0cc4168924a7d41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga35efd806c6a7e0a3c80ef41b0f1e989d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__group__hal__lptimer.html#ga35efd806c6a7e0a3c80ef41b0f1e989d">cyhal_lptimer_get_info</a> (<a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *obj, <a class="el" href="group__group__hal__lptimer.html#structcyhal__lptimer__info__t">cyhal_lptimer_info_t</a> *info)</td></tr>
<tr class="memdesc:ga35efd806c6a7e0a3c80ef41b0f1e989d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get information about the LPTimer.  <a href="group__group__hal__lptimer.html#ga35efd806c6a7e0a3c80ef41b0f1e989d">More...</a><br /></td></tr>
<tr class="separator:ga35efd806c6a7e0a3c80ef41b0f1e989d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="structcyhal__lptimer__info__t" id="structcyhal__lptimer__info__t"></a>
<h2 class="memtitle"><span class="permalink"><a href="#structcyhal__lptimer__info__t">&#9670;&nbsp;</a></span>cyhal_lptimer_info_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct cyhal_lptimer_info_t</td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="3">Data Fields</th></tr>
<tr><td class="fieldtype">
<a id="a4e13c1d5a49242cc9c88c1ae28eaa6d1" name="a4e13c1d5a49242cc9c88c1ae28eaa6d1"></a>uint32_t</td>
<td class="fieldname">
frequency_hz</td>
<td class="fielddoc">
Operating clock frequency the LPTimer is running on. </td></tr>
<tr><td class="fieldtype">
<a id="ad0043d671bf3be7655d7701d6fbedcb8" name="ad0043d671bf3be7655d7701d6fbedcb8"></a>uint8_t</td>
<td class="fieldname">
min_set_delay</td>
<td class="fielddoc">
Minimum permitted value for the delay parameter in <a class="el" href="group__group__hal__lptimer.html#gae91cdc8b63ef191f5a2013df3aaa5d78">cyhal_lptimer_set_delay</a>. </td></tr>
<tr><td class="fieldtype">
<a id="ad1c80953a10b9fb43df70da51da519dc" name="ad1c80953a10b9fb43df70da51da519dc"></a>uint32_t</td>
<td class="fieldname">
max_counter_value</td>
<td class="fielddoc">
Maximum value of the counter. </td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="gae51c0464d3c9ca35707e15afe31ccb54" name="gae51c0464d3c9ca35707e15afe31ccb54"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae51c0464d3c9ca35707e15afe31ccb54">&#9670;&nbsp;</a></span>cyhal_lptimer_set_time</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define cyhal_lptimer_set_time&#160;&#160;&#160;<a class="el" href="group__group__hal__lptimer.html#ga8be81430cef74735168e703f204fe1a5">cyhal_lptimer_set_match</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Deprecated. </p>
<p >Call cyhal_lptimer_set_match instead. </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="gad5438541af765572369ee96588bd4ee5" name="gad5438541af765572369ee96588bd4ee5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad5438541af765572369ee96588bd4ee5">&#9670;&nbsp;</a></span>cyhal_lptimer_init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a> cyhal_lptimer_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize the LPTimer. </p>
<p >Initialize or re-initialize the LPTimer. This resets all the clocking and prescaler registers, along with disabling the compare interrupt. Refer to the BSP for the clock source for the LPTimer.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">obj</td><td>Pointer to an LPTimer object. The caller must allocate the memory for this object but the init function will initialize its contents. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The status of the init request. On success it returns <a class="el" href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a>. </dd></dl>

</div>
</div>
<a id="ga0cbaebaddaa47faf71a69d46c65f7917" name="ga0cbaebaddaa47faf71a69d46c65f7917"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0cbaebaddaa47faf71a69d46c65f7917">&#9670;&nbsp;</a></span>cyhal_lptimer_free()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cyhal_lptimer_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Deinitialize the LPTimer. </p>
<p >Powers down the LPTimer. After calling this function no other LPTimer functions should be called except <a class="el" href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5" title="Initialize the LPTimer.">cyhal_lptimer_init()</a>. Calling any function other than init after freeing is undefined.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga5ed361c85190707574565009eb325473" name="ga5ed361c85190707574565009eb325473"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5ed361c85190707574565009eb325473">&#9670;&nbsp;</a></span>cyhal_lptimer_reload()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a> cyhal_lptimer_reload </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reload/Reset the Low-Power timer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The status of the reload request. On success it returns <a class="el" href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a>. </dd></dl>

</div>
</div>
<a id="ga8be81430cef74735168e703f204fe1a5" name="ga8be81430cef74735168e703f204fe1a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8be81430cef74735168e703f204fe1a5">&#9670;&nbsp;</a></span>cyhal_lptimer_set_match()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a> cyhal_lptimer_set_match </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>ticks</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Update the match/compare value. </p>
<p >Update the match value of an already configured LPTimer set up to generate an interrupt on match. Note that this function does not reinitialize the counter or the associated peripheral initialization sequence. </p><dl class="section note"><dt>Note</dt><dd>This does not reset the counter.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ticks</td><td>The tick value to match</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The status of the set_match request. On success it returns <a class="el" href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a>. </dd></dl>

</div>
</div>
<a id="gae91cdc8b63ef191f5a2013df3aaa5d78" name="gae91cdc8b63ef191f5a2013df3aaa5d78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae91cdc8b63ef191f5a2013df3aaa5d78">&#9670;&nbsp;</a></span>cyhal_lptimer_set_delay()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__group__result.html#gaca79700fcc701534ce61778a9bcf57d1">cy_rslt_t</a> cyhal_lptimer_set_delay </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>delay</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Update the match/compare value. </p>
<p >Update the match value of an already configured LPTimer set up to generate an interrupt on match delay from the current counter value. Note that this function does not reinitialize the counter or the associated peripheral initialization sequence. </p><dl class="section note"><dt>Note</dt><dd>This does not reset the counter.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">delay</td><td>The ticks to wait. The minimum permitted delay value can be queried using <a class="el" href="group__group__hal__lptimer.html#ga35efd806c6a7e0a3c80ef41b0f1e989d">cyhal_lptimer_get_info</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The status of the set_match request. On success it returns <a class="el" href="group__group__result.html#gaf58fac450d9fff4472f03ad68f6e546e">CY_RSLT_SUCCESS</a>. </dd></dl>

</div>
</div>
<a id="gae759c60b5865a26599353e436518b1d3" name="gae759c60b5865a26599353e436518b1d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae759c60b5865a26599353e436518b1d3">&#9670;&nbsp;</a></span>cyhal_lptimer_read()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t cyhal_lptimer_read </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Read the current tick. </p>
<p >If no rollover has occurred, the seconds passed since <a class="el" href="group__group__hal__lptimer.html#gad5438541af765572369ee96588bd4ee5" title="Initialize the LPTimer.">cyhal_lptimer_init()</a> or <a class="el" href="group__group__hal__lptimer.html#gae51c0464d3c9ca35707e15afe31ccb54" title="Deprecated.">cyhal_lptimer_set_time()</a> was called can be found by dividing the ticks returned by this function by the frequency of the source clock (Refer to BSP Settings section in the kit's BSP API Reference Manual for details on the clock source for LPTimer).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The timer's timer value in ticks </dd></dl>

</div>
</div>
<a id="gac670fa5380ffd41e548dac6975500b3d" name="gac670fa5380ffd41e548dac6975500b3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac670fa5380ffd41e548dac6975500b3d">&#9670;&nbsp;</a></span>cyhal_lptimer_register_callback()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cyhal_lptimer_register_callback </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__group__hal__lptimer.html#ga09c30c6a9abcbd1a738529102aa9c9b5">cyhal_lptimer_event_callback_t</a>&#160;</td>
          <td class="paramname"><em>callback</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>callback_arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Register a LPTimer match event handler. </p>
<p >This function will be called when one of the events enabled by <a class="el" href="group__group__hal__lptimer.html#gaa07d09cfeb275d1343a335f6b4caec9c">cyhal_lptimer_enable_event</a> occurs.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">callback</td><td>The callback handler which will be invoked when the interrupt triggers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">callback_arg</td><td>Generic argument that will be provided to the handler when called </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gaa07d09cfeb275d1343a335f6b4caec9c" name="gaa07d09cfeb275d1343a335f6b4caec9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa07d09cfeb275d1343a335f6b4caec9c">&#9670;&nbsp;</a></span>cyhal_lptimer_enable_event()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cyhal_lptimer_enable_event </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__group__hal__lptimer.html#ga8a2db5e37e9e36afd382844cf909278f">cyhal_lptimer_event_t</a>&#160;</td>
          <td class="paramname"><em>event</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>intr_priority</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>enable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Configure and Enable/Disable the LPTimer events. </p>
<p >When an enabled event occurs, the function specified by <a class="el" href="group__group__hal__lptimer.html#gac670fa5380ffd41e548dac6975500b3d">cyhal_lptimer_register_callback</a> will be called.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">event</td><td>The LPTimer event type </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">intr_priority</td><td>The priority for NVIC interrupt events </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">enable</td><td>True to turn on event, False to turn off </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga6c86e106c2cc0e5ce0cc4168924a7d41" name="ga6c86e106c2cc0e5ce0cc4168924a7d41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6c86e106c2cc0e5ce0cc4168924a7d41">&#9670;&nbsp;</a></span>cyhal_lptimer_irq_trigger()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cyhal_lptimer_irq_trigger </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Manually trigger the LPTimer interrupt. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga35efd806c6a7e0a3c80ef41b0f1e989d" name="ga35efd806c6a7e0a3c80ef41b0f1e989d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga35efd806c6a7e0a3c80ef41b0f1e989d">&#9670;&nbsp;</a></span>cyhal_lptimer_get_info()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void cyhal_lptimer_get_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__group__hal__impl__hw__types.html#structcyhal__lptimer__t">cyhal_lptimer_t</a> *&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__group__hal__lptimer.html#structcyhal__lptimer__info__t">cyhal_lptimer_info_t</a> *&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get information about the LPTimer. </p>
<p >Provides information such as operating frequency, etc.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">obj</td><td>The LPTimer object. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">info</td><td>Information about the LPtimer. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part
<div id="nav-path" class="navpath">
    <ul>
        <li class="footer">
            Generated for <b>Hardware Abstraction Layer (HAL)</b> by <b>Cypress Semiconductor Corporation</b>.
            All rights reserved.
        </li>
    </ul>
</div>
-->
</body>
</html>
